//
// Ishtar C++ Utility Library
//
// EX Part Precompiled Header
//

#ifndef __ISHTAR_EX_ISHTAR_PCH_H
#define __ISHTAR_EX_ISHTAR_PCH_H


#include <Ishtar/Setup/Platform.h>

///////////////////////////////////////////////////////////////////////////////
//
// Whole Project Defines
//

#ifdef WIN32_LEAN_AND_MEAN
#define WIN32_LEAN_AND_MEAN
#endif

#if defined( ISHTAR_SYSTEM_IS_WINDOWS )

#define _WIN32_WINNT 0x0501 // Windows XP or later

#endif


#if defined( ISHTAR_COMPILER_IS_MSVC )

#if ( _MSC_VER == 1310 ) // Visual C++ .NET 2003 (version 7.1)
#pragma warning( disable: 4675 )
#endif

#if ( _MSC_VER >= 1400 ) // Visual C++ 2005 (version 8.0) or later
#define _CRT_SECURE_NO_DEPRECATE
#define _SCL_SECURE_NO_DEPRECATE
#endif

#endif

#define BOOST_FILESYSTEM_VERSION 3


///////////////////////////////////////////////////////////////////////////////
//
// Headers
//

// ANSI C headers
#include <ctype.h>

// ANSI C++ headers
#include <algorithm>
#include <cstdlib>
#include <deque>
#include <fstream>
#include <iostream>
#include <list>
#include <map>
#include <memory>
#include <set>
#include <sstream>
#include <string>
#include <vector>


#if defined( ISHTAR_SYSTEM_IS_WINDOWS )

// Windows SDK headers
#include <winsock2.h>
#include <windows.h>

#endif // ISHTAR_SYSTEM_IS_WINDOWS


// Boost headers - more than <Ishtar/Precompiled.hpp>
#include <boost/asio/io_service.hpp>
#include <boost/asio/ip/tcp.hpp>
#include <boost/filesystem.hpp>
#include <boost/regex.hpp>
#include <boost/tokenizer.hpp>
#include <boost/unordered_map.hpp>

#if ( _MSC_VER >= 1400 ) // Visual C++ 2005 (version 8.0) or later
#include <boost/type_traits.hpp>
#endif

// Ishtar basic headers
#include <Ishtar/Precompiled.h>
#include <Ishtar/Chrono/TimedBool.h>
#include <Ishtar/ExceptionCatcher.h>
#include <Ishtar/InterlockedInteger.h>
#include <Ishtar/SharedBuffer.h>
#include <Ishtar/Singleton.h>
#include <Ishtar/Thread.h>
#include <Ishtar/TraceW.h>


///////////////////////////////////////////////////////////////////////////////

#endif // __ISHTAR_EX_ISHTAR_PCH_H
 